package com.sky.demo.singleton;

/**
 * Description:
 * 懒汉式 线程安全的
 * 1、构造器私有化
 * 2、用一个静态变量保存这个唯一实例
 * 3、提供一个静态方法，获取这个实例
 *
 * @author Sky
 * @Date 2021/7/31 10:59
 */
public class LazySingleton2 {

    public static LazySingleton2 INSTANCE;

    private LazySingleton2() {
    }



    /*public static synchronized LazySingleton2 getInstance(){

        if(INSTANCE == null){

            INSTANCE = new LazySingleton2();
        }
        return INSTANCE;
    }
*/

    public static LazySingleton2 getInstance() {

        if(INSTANCE == null){

            synchronized (LazySingleton2.class){

                if(INSTANCE == null){
                    INSTANCE = new LazySingleton2();
                }

            }
        }
        return INSTANCE;

    }

}
